#ifndef KXLUA_LUA_H_
#define KXLUA_LUA_H_

extern "C" {

#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"

}

#include "ilua.h"

namespace kxlua {

class Lua : public ILua {
public:
    Lua();
    virtual ~Lua();

public:
    lua_State* GetState();

private:
    virtual const std::string GetLastError() const;

    virtual int DoFile(std::string name);
    virtual int DoString(std::string name);

private:
    std::string error_;

    lua_State* state_;
};

}

#endif
